$(function () {

    var allPage,bannerStatus,page,searchKey,size,type,zhi;

    // 页面初始化...显示banner的列表...
    page = getBannerList( '',1,'',10,'' );
    getPage(page);

    // 封装一个函数,,,获取所有banner的列表...
    function getBannerList( bannerStatus,page,searchKey,size,type )
    {
        // 加载数据之前都要先清空放表格的div...
        clearBannerAdmin('.banner_admin');

        // 从后台获取数据...
        $.ajax({
            async: false,
            type: 'post',
            headers: {"Accept-CMS-Token": token},
            url: listbanner,
            data: {
                bannerStatus: bannerStatus,
                page:page,
                searchKey: searchKey,
                size: size,
                type: type
            },
            dataType: 'json',
            success:successFn,
            error: function () {
                console.log('banner列表接口失败...')
            }
        });

        return allPage;

    };

    // 向后台发送ajax...封装一个函数...当success的时候执行该函数...
    function successFn(data)
    {
        if (data.resultCode == 200)
        {
            allPage = data.count;
            var list = data.value;
            var len = list.length;
            for (var i = 0; i < len; i++)
            {
                $('.banner_admin tbody').append('<tr bannerid="' + list[i].id + '" bannerStatus="'+list[i].bannerStatus+'"></tr>');

                $('.banner_admin tbody tr').eq(i).append('<td>' + (i + 1) + '</td>');//序号

                $('.banner_admin tbody tr').eq(i).append('<td style="padding: 5px;"><img src="'+ address + changeNull(list[i].coverUrl) +'" width="100" height="60"></td>');//banner...封面图...

                $('.banner_admin tbody tr').eq(i).append('<td>' + changeNull(list[i].title) + '</td>');//标题

                $('.banner_admin tbody tr').eq(i).append('<td>' + changeNull(list[i].info) + '</td>');//描述

                $('.banner_admin tbody tr').eq(i).append('<td>' + changeBannerType(list[i].type) + '</td>');//类型

                $('.banner_admin tbody tr').eq(i).append('<td>' + getMoth(list[i].startTime) + '</td>');//上传时间

                $('.banner_admin tbody tr').eq(i).append('<td>' + getMoth(list[i].endTime) + '</td>');//结束时间

                $('.banner_admin tbody tr').eq(i).append('<td>' + changeBannerStatus(list[i].bannerStatus) + '</td>');//状态

                $('.banner_admin tbody tr').eq(i).append('<td>' + changeNull(list[i].staticUrl) + '</td>');//链接地址

                var wordStatus = changeBannerStatus(list[i].bannerStatus);
                if( wordStatus == '在线' )
                {
                    $('.banner_admin tbody tr').eq(i).append('<td><a href="#" class="ed edit_banner">编辑</a><a href="#" class="ed look_banner">查看</a><a class="ed handle">下线</a></td>');//操作
                }
                else if( wordStatus == '下线' )
                {
                    $('.banner_admin tbody tr').eq(i).append('<td><a href="#" class="ed edit_banner">编辑</a><a href="#" class="ed look_banner">查看</a><a class="ed handle">上线</a></td>');//操作
                }
                else if( wordStatus == '待上线' )
                {
                    $('.banner_admin tbody tr').eq(i).append('<td><a href="#" class="ed edit_banner">编辑</a><a href="#" class="ed look_banner">查看</a><a class="ed handle">上线</a></td>');//操作
                };


            };
            console.log('banner列表接口请求成功!!!')
        }
        else if (data.resultCode == 515)
        {
            reLogin();
        }
        else
        {//这种情况下没有数据...500...
            allPage = 1;
            $('.banner_admin tbody').append('<tr><td></td><td></td></td><td>您搜索的内容不存在</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>');
            hintUser();
        };

    };

    // 清空div...追加出账的表头....
    function clearBannerAdmin(Dom)
    {
        $(Dom).html('');
        $(Dom).append('<thead><tr><th>序号</th><th>banner</th><th>标题</th><th>描述</th><th>类型</th><th>上传时间</th><th>结束时间</th><th>状态</th><th>链接地址</th><th>操作</th></tr></thead><tbody></tbody>');
    };

    // 根据后台返回来的状态码,将状态码转换成文字
    function changeBannerType(para)
    {

        if( para == 1 )
        {
            return '活动'
        }
        else if( para == 2 )
        {
            return '广告'
        }
        else if( para == 3 )
        {
            return '展示'
        };

    };

    // 根据后台返回来的状态码,将状态码转换成文字
    function changeBannerStatus(para)
    {
        if( para == 1 )
        {
            return '在线'
        }
        else if( para == 2 )
        {
            return '下线'
        }
        else if( para == 3 )
        {
            return '待上线'
        };
    };

    // 分页插件封装   为分页插件传递数据
    function getPage(allPage)
    {
        $('.M-box2').pagination({
            pageCount:allPage,
            jump:true,
            coping:true,
            homePage:'首页',
            endPage:'末页',
            prevContent:'上页',
            nextContent:'下页',
            callback:function (api){//当点击页面当中的时候,会出发这个callback函数;;;;
                page = api.getCurrent()+"";//得到的是要跳转到的那一页的页码;

                bannerStatus = $('.bannerStatus option:selected').val();
                searchKey = $('input[name = search_banner_cont]').val();
                type = $('.type option:selected').val();
                size = 10;

                zhi = getBannerList( bannerStatus,page,searchKey,size,type )

            }
        });

    };

    //整个页面的搜索功能!!!  向   accountList这个函数里面传参数
    $('.search_banner').click(function(){

        bannerStatus = $('.bannerStatus option:selected').val();
        page = 1;
        searchKey = $('input[name = search_banner_cont]').val();
        type = $('.type option:selected').val();
        size = 10;

        zhi = getBannerList( bannerStatus,page,searchKey,size,type )

        getPage(zhi);

    });

    //当输入文本框中时,,,按下enter键,,,发起搜索,,,
    $(document).keydown(function(event){
        var ev = ev || event;
        // console.log(ev.keyCode)
        if( ev.keyCode == 13 )
        {
            bannerStatus = $('.bannerStatus option:selected').val();
            page = 1;
            searchKey = $('input[name = search_banner_cont]').val();
            type = $('.type option:selected').val();
            size = 10;

            zhi = getBannerList( bannerStatus,page,searchKey,size,type )

            getPage(zhi);

        };
    });

    // 每一个下拉菜单发生变化的时候,,,向后台请求,,,对应的列表发生变化;
    function changeXiaLa(x)
    {
        $(x).change(function (){
            bannerStatus = $('.bannerStatus option:selected').val();
            page = 1;
            searchKey = $('input[name = search_banner_cont]').val();
            type = $('.type option:selected').val();
            size = 10;

            zhi = getBannerList( bannerStatus,page,searchKey,size,type )

            getPage(zhi);

        });
    };
    changeXiaLa('.type');
    changeXiaLa('.bannerStatus');

    // 有关Banner的操作...上线...下线...
    $(document).on('click','.handle',function () {

        var bannerId = $(this).parent('td').parent('tr').attr('bannerid');
        var bannerStatus = $(this).parent('td').parent('tr').attr('bannerstatus');

        if( $(this).html() == '上线' )
        {
            bannerOnline( bannerId,1 );

            if( changeBannerStatus( bannerStatus ) == '待上线' )
            {
                $(this).parent().parent().children('td').eq(7).html('在线')
                $(this).html('下线')
            }
            else if( changeBannerStatus( bannerStatus ) == '下线' )
            {
                $(this).parent().parent().children('td').eq(7).html('在线')
                $(this).html('下线')
            };
        }
        else if( $(this).html() == '下线' )
        {
            bannerOnline( bannerId,2 );

            $(this).parent().parent().children('td').eq(7).html('下线')
            $(this).html('上线')
        };

    });

    // 将上线和下线封装成一个函数...与后台交互...
    function bannerOnline( bannerId,bannerStatus )
    {
        $.ajax({
            async: false,
            type: 'post',
            headers: {"Accept-CMS-Token": token},
            url: upordown,
            data: {
                bannerId:bannerId,
                bannerStatus: bannerStatus,
            },
            dataType: 'json',
            success:function (data) {
                if(data.resultCode == 200)
                {
                    // console.log('商品上架或者下架接口调通!!!!')
                }
                else if(data.resultCode == 515)
                {
                    reLogin();
                }

                console.log('banner操作上线或下线成功...')
            },
            error: function () {
                console.log('banner操作上线或下线失败...')
            }
        })
    }

    // 点击编辑...进入到编辑此条Banner的页面...
    $(document).on('click','.edit_banner',function () {

        var bannerid = $(this).parent().parent().attr('bannerid');

        window.location.href =  edit_banner + '?bannerid=' + bannerid ;

    });
    // 点击查看...进入到查看此条Banner的页面...
    $(document).on('click','.look_banner',function () {

        var bannerid = $(this).parent().parent().attr('bannerid');

        window.location.href =  look_banner + '?bannerid=' + bannerid ;

    });














});
